home *** CD-ROM | disk | FTP | other *** search
- ; FILE: Source:modules/BPPCFix11.ASM REV: 1 --- Disable ppc.library of blizzppc
-
- ;
- ; BPPCFix module for BlizKick
- ; ~~~~~~~~~~~~~~~~~~~~~~~~~~~
- ; Written by Harry Sintonen.
- ;
- ; 1.0: initial release.
- ; 1.1: fixed priority to -1. with priority 0 and installed to ROM
- ; area, this module was initialized before `Blizzard PPC Library Init'
- ; and thus failed to work.
- ;
- ; based on:
- ;
- ;** BPPCFix_kickcode.asm
- ;**
- ;** Disables ppc.library resident modules on Amigas with BPPC
- ;** Written in 1998 by Frank Wille <frank@phoenix.owl.de>
- ;**
- ;** V1.0 26-Dec-98
- ;** created
- ;
- ;
- ;
-
- incdir "include:"
- include "exec/types.i"
- include "exec/libraries.i"
-
- include "exec/execbase.i"
-
- include "blizkickmodule.i" ; Some required...
-
- SECTION MODULE,CODE
- _DUMMY_LABEL
- BK_MOD BKMF_SingleMode,_end,(RTF_COLDSTART)<<24+37<<16+NT_UNKNOWN<<8+(256-1),_name,_idstr,_init
-
- ; Singlemode on,
- ; COLDSTART module, requires KS V37.x or better, module type NT_UNKNOWN, priority -1.
-
- _init movem.l d0-a6,-(sp)
- move.l (4).w,a6
-
- jsr (-$84,a6) ; Forbid()
-
- move.l (ResModules,a6),a0
- move.l a0,a1
- bra.b loop_end
- loop:
- move.l d0,(a1)+
- bpl.b 1$
- bclr #31,d0
- move.l d0,a0
- move.l d0,a1
- bra.b loop_end
- 1$: move.l d0,a2
-
- ; compare module name with "ppc.library"
- move.l (RT_NAME,a2),a2 ; name of current module
- lea (ppc_name,pc),a3
- moveq #12-1,d0
- 2$: cmpm.b (a2)+,(a3)+
- dbne d0,2$
- bne.b loop_end
- subq.l #4,a1 ; ppc.library found - remove module
-
- loop_end:
- move.l (a0)+,d0
- bne.b loop
-
- clr.l (a1) ; end list
-
- jsr (-$27c,a6) ; CacheClearU()
-
- jsr (-$8a,a6) ; Permit()
-
- exit movem.l (sp)+,d0-a6
- rts
-
- ppc_name
- dc.b 'ppc.library',0
-
- _name dc.b 'BPPCFix',0
- _idstr dc.b 'BPPCFix 1.1 (7.3.00)',0
- CNOP 0,2
- _end
-
- SECTION VERSION,DATA
-
- dc.b '$VER: BPPCFix_MODULE 1.1 (7.3.00)',0
-
-